The field of 3D image production has largely been hampered by the time which it takes to take the data to produce a 3D film. Previously, 3D films have generally been perceived as a novelty as opposed to a serious recording format. Now, 3D image generation is seen as being an important tool in the production of CG images.
Photometric stereo is a well established 3D reconstruction technique. A sequence of images (typically three or more) of a 3D scene are obtained from the same viewpoint and under illumination from different directions. From the intensity variation in each pixel it is possible to estimate the local orientation of the surface of the object that projects onto that pixel.
By integrating all these surface orientations a very detailed estimate of the surface geometry can be obtained. As any other reconstruction method, photometric stereo faces several difficulties when faced with real images. One of the most important of these difficulties is the frequent presence of shadows in an image. No matter how careful the arrangement of the light sources, shadows are an almost unavoidable phenomenon, especially in objects with complex geometries.
Previously, shadows have been dealt with using four or more images from four different illumination directions. This over-determines the local surface orientation and albedo which only requires three degrees of freedom. This implies that it is possible to use the residual of a least squares solution, to determine whether shadowing has occurred. However when there are only three 2D images there are no spare constraints. Therefore the problem of detecting shadows becomes more difficult. Furthermore, when a pixel is in shadow in one of the three images most methods simply discard it.